//import java.util.Arrays;
//import java.util.Scanner;
//
//public class Main {
//    static int n;
//    static int[] st;
//
//    public static void main(String[] args) {
//        Scanner scanner = new Scanner(System.in);
//        n = scanner.nextInt();
//        st = new int[n+1];
//        dfs(1);
//    }
//
//    public static void dfs(int u) {
//        if(u == n) {
//            for(int i = 1; i<=n; i++) {
//                if(st[i] == 1) {
//                    System.out.print(i + " ");
//                }
//            }
//            System.out.println();
//            return;
//        }
//        //不选
//        dfs(u+1);
//        //选
//        st[u] = 1;
//        dfs(u+1);
//        st[u] = 0;
//    }
//}

//
//public class Main {
//    static int n;
//    static int[] st;
//    static Boolean[] used;
//    public static void main(String[] args) {
//        Scanner scanner = new Scanner(System.in);
//        n = scanner.nextInt();
//        st = new int[n+1];
//        used = new Boolean[n+1];
//        for(int i = 1; i<=n; i++) {
//            used[i] = false;
//        }
//        dfs(1);
//    }
//    public static void dfs(int u) {
//        if(u > n) {
//            for(int i = 1; i<=n; i++) {
//                System.out.print(st[i] + " ");
//            }
//            System.out.println();
//            return;
//        }
//
//        for(int i = 1; i<=n; i++) {
//            if(!used[i]) {
//                st[u] = i;
//                used[i] = true;
//                dfs(u+1);
//                //恢复现场
//                st[u] = 0;
//                used[i] = false;
//            }
//        }
//    }
//}
//
//class NextPermutation {
//    int[] tmp;
//    boolean[] used;
//    int begin;
//    int end;
//    public NextPermutation(int[] nums, int begin, int end) {
//        this.tmp = Arrays.copyOf(nums,nums.length);
//        this.begin = begin;
//        this.end = end;
//        used = new boolean[end - begin + 1];
//    }
//
//    public boolean start(int[] nums) {
//        dfs(begin, nums);
//        return false;
//    }
//
//    public void dfs(int u, int[] nums) {
//        if(begin >= end) {
//            for(int i = begin; i<=end; i++) {
//                nums[i] = tmp[i];
//            }
//            return;
//        }
//
//        for(int i = begin; i<=end; i++) {
//            if(!used[i]) {
//                tmp[u] = nums[i];
//                used[i] = true;
//                dfs(u+1,nums);
//                //恢复现场
//                used[i] = false;
//            }
//        }
//    }
//}

//*o**o***o***
//*o***o**o***
//
//import java.util.Scanner;
//
//public class Main {
//    public static void main(String[] args) {
//        Scanner scanner = new Scanner(System.in);
//        String str1 = scanner.next();
//        String str2 = scanner.next();
//        int count = 0;
//        char[] s1 = str1.toCharArray();
//        char[] s2 = str2.toCharArray();
//        int flag = 1;
//        for(int i = 0; i<str1.length(); i++) {
//            if(s1[i]!=s2[i]) {
//                flag = -flag;
//            }
//            if(flag == -1) {
//                count++;
//            }
//        }
//        System.out.println(count);
//    }
//}
//
//import java.util.Scanner;
//
//public class Main {
//    public static void main(String[] args) {
//        Scanner scanner = new Scanner(System.in);
//        long l = scanner.nextLong();
//        long r = scanner.nextLong();
//        int count = 0;
//        for(long i = l; i<=r; i++) {
//            if(i%2==1 || i%4==0) count++;
//        }
//        System.out.print(count);
//    }
//}


import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n = scanner.nextInt();
        String[] strs = new String[n];
        for (int i = 0; i < n; i++) {
            strs[i] = scanner.next();
        }
        int[] dp = new int[n];
        dp[0] = 1;
        for (int i = 1; i < n; i++) {
            char c1 = strs[i-1].charAt(strs[i-1].length()-1);
            char c2 = strs[i].charAt(0);
            if(c1 == c2) dp[i] = dp[i-1] +  1;
            else dp[i] = 1;
        }

        for(int i = 0; i<n;i++) {
            System.out.print(dp[i] + " ");
        }

        int ret = n - dp[n-1];
        System.out.println(ret);
    }
}